home *** CD-ROM | disk | FTP | other *** search
- /*
- IC API.h
-
- Header file describing the main interface to the IC library. The routines below are actually
- switch routined which can call either the linked in code or the IC component (whichever is
- available and allowed).
- */
-
- #pragma once
-
- #ifndef __IC_API__
- #define __IC_API__
-
- #include "IC Types.h"
- #include "IC Keys.h"
-
- #if 0
- // Routine Descriptions
- #include "IC API Descriptions.h"
- #endif
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- OSErr ICEnableComponent(void);
- OSErr ICDisableComponent(void);
- OSErr ICEnableLinkedCode(void);
- OSErr ICDisableLinkedCode(void);
- Boolean ICComponentEnabled(void);
- Boolean ICLinkedCodeEnabled(void);
- Boolean ICUsingComponent(ICInstance inst);
-
- /* ***** Starting Up and Shutting Down ***** */
-
- ICError ICStart(ICInstance* inst,OSType creator);
- ICError ICStop(ICInstance inst);
-
- /* ***** Specifying a Configuration ***** */
-
- ICError ICFindConfigFile(ICInstance inst,short count,ICDirSpecArrayPtr folders);
- ICError ICFindUserConfigFile(ICInstance inst,ICDirSpec* where);
- ICError ICGeneralFindConfigFile(ICInstance inst,Boolean search_prefs,Boolean can_create,short count,ICDirSpecArrayPtr folders);
- ICError ICChooseConfig(ICInstance inst);
- ICError ICChooseNewConfig(ICInstance inst);
- ICError ICGetConfigName(ICInstance inst,Boolean longname,StringPtr name);
- ICError ICGetConfigReference(ICInstance inst,ICConfigRefHandle ref);
- ICError ICSetConfigReference(ICInstance inst,ICConfigRefHandle ref,long flags);
- ICError ICSpecifyConfigFile(ICInstance inst,FSSpec* config);
-
- /* ***** Getting Information ***** */
-
- ICError ICGetSeed(ICInstance inst,long* seed);
- ICError ICGetPerm(ICInstance inst,ICPerm* perm);
- ICError ICDefaultFileName(ICInstance inst,StringPtr name);
- ICError ICGetComponentInstance(ICInstance inst,Ptr* component_inst);
-
- /* ***** Reading and Writing Preferences ***** */
-
- ICError ICBegin(ICInstance inst,ICPerm perm);
- ICError ICGetPref(ICInstance inst,StringPtr key,ICAttr* attr,Ptr buf,long* size);
- ICError ICSetPref(ICInstance inst,StringPtr key,ICAttr attr,Ptr buf,long size);
- ICError ICFindPrefHandle(ICInstance inst,StringPtr key,ICAttr* attr,Handle prefh);
- ICError ICGetPrefHandle(ICInstance inst,StringPtr key,ICAttr* attr,Handle* prefh);
- ICError ICSetPrefHandle(ICInstance inst,StringPtr key,ICAttr attr,Handle prefh);
- ICError ICCountPref(ICInstance inst,long* count);
- ICError ICGetIndPref(ICInstance inst,long n,StringPtr key);
- ICError ICDeletePref(ICInstance inst,StringPtr key);
- ICError ICEnd(ICInstance inst);
-
- /* ***** User Interface Stuff ***** */
-
- ICError ICEditPreferences(ICInstance inst,StringPtr key);
-
- /* ***** URL Handling ***** */
-
- ICError ICParseURL(ICInstance inst,StringPtr hint,Ptr data,long len,long* selStart,long* selEnd,Handle url);
- ICError ICLaunchURL(ICInstance inst,StringPtr hint,Ptr data,long len,long* selStart,long* selEnd);
-
- /*
- ***** Mappings Routines *****
-
- Routines for interrogating mappings database.
-
- ----- High Level Routines -----
- */
-
- ICError ICMapFilename(ICInstance inst,StringPtr filename,ICMapEntry* entry);
- ICError ICMapTypeCreator(ICInstance inst,OSType fType,OSType fCreator,StringPtr filename,ICMapEntry* entry);
-
- /* ----- Mid Level Routines ----- */
-
- ICError ICMapEntriesFilename(ICInstance inst,Handle entries,StringPtr filename,ICMapEntry* entry);
- ICError ICMapEntriesTypeCreator(ICInstance inst,Handle entries,OSType fType,OSType fCreator,StringPtr filename,ICMapEntry* entry);
-
- /* ----- Low Level Routines ----- */
-
- ICError ICCountMapEntries(ICInstance inst,Handle entries,long* count);
- ICError ICGetIndMapEntry(ICInstance inst,Handle entries,long ndx,long* pos,ICMapEntry* entry);
- ICError ICGetMapEntry(ICInstance inst,Handle entries,long pos,ICMapEntry* entry);
- ICError ICSetMapEntry(ICInstance inst,Handle entries,long pos,ICMapEntry* entry);
- ICError ICDeleteMapEntry(ICInstance inst,Handle entries,long pos);
- ICError ICAddMapEntry(ICInstance inst,Handle entries,ICMapEntry* entry);
-
- #ifdef __cplusplus
- }
- #endif // __cplusplus
-
- #endif /* __H_IC_API__ */
-